﻿-- =============================================
-- Author:		<OmicronConsulting, Rizzano Davide>
-- Create date: <10/09/2013>
-- Description:	<Estrattore BABELE vs WSO2>
-- =============================================
CREATE PROCEDURE [dbo].[bab_util_BABELE_DIPARTIMENTALI]
	@RICHIESTA int
	,@TYPE AS CHAR(3)
AS
BEGIN

DECLARE @ID_RICHIESTA AS INT
--SET @ID_RICHIESTA = 856
SET @ID_RICHIESTA = @RICHIESTA

--Valorizzazione costanti headerSIO
DECLARE @guid AS UNIQUEIDENTIFIER
DECLARE @sender AS varchar(50)
DECLARE @receiver AS varchar(50)
DECLARE @requestDateTime AS datetime
DECLARE @version AS varchar(50)

SET @guid = NEWID()
SET @sender = 'BABELE'
SET @receiver = ''
SET @requestDateTime = GETDATE()
SET @version = 'OML_O21'
--Valorizzazione costanti headerSIO __fine__

/*
	La variabile tabella è utile per l'estrazione del campo [PROGRESSIVO] all'interno della definizione xml.
	E' un [PROGRESSIVO] che deve essere valorizzato nell'ambito della stessa RICHIESTA.
*/
DECLARE @T_ATTI TABLE (
	[PROGRESSIVO] [int] IDENTITY(1,1) NOT NULL,
	[ID_ATTO] [int],
	[ID_CONTATTO] [int] NOT NULL,
	[ID_PAZLOC] [int] NOT NULL,
	[ID_RICHIESTA] [int] NULL,
	[CCEROGA] [char](7) NULL,
	[CODPRE] [varchar](7) NULL,
	[TIPOPRE] [varchar](1) NULL,
	[CODGRU] [varchar](4) NULL,
	[QUANTITA] [varchar](2) NOT NULL,
	[IMPORTO_E] [numeric](9, 2) NOT NULL,
	[TARIFFA_E] [numeric](9, 2) NOT NULL,
	[DATARICH] [varchar](8) NULL,
	[ORARICH] [varchar](5) NULL,
	[OPERICH] [varchar](5) NULL,
	[DATAPRENO] [varchar](8) NULL,
	[ORAPRENO] [varchar](5) NULL,
	[OPEPRENO] [varchar](5) NULL,
	[ID_APPUNTAMENTO] [int] NULL,
	[DATAACC] [varchar](8) NULL,
	[ORAACC] [varchar](5) NULL,
	[OPEACC] [varchar](5) NULL,
	[DATADEL] [varchar](8) NULL,
	[OPEDEL] [varchar](5) NULL,
	[ID_REFERTO] [int] NULL,
	[MODREF] [varchar](1) NULL,
	[TIPOREF] [varchar](1) NULL,
	[STATO] [char](1) NULL,
	[ESPORTATO] [char](1) NOT NULL,
	[DATAESP] [varchar](8) NULL,
	[SYS_DATAINS] [datetime] NULL,
	[SYS_DATAMOD] [datetime] NULL,
	[SYS_HOSTMOD] [varchar](8) NULL,
	[ID_IMPEGNATIVA] [int] NULL
)


insert into @T_ATTI(
	[ID_ATTO],
	[ID_CONTATTO],
	[ID_PAZLOC],
	[ID_RICHIESTA],
	[CCEROGA],
	[CODPRE],
	[TIPOPRE],
	[CODGRU],
	[QUANTITA],
	[IMPORTO_E],
	[TARIFFA_E],
	[DATARICH],	
	[ORARICH],
	[OPERICH],
	[DATAPRENO],
	[ORAPRENO],
	[OPEPRENO],
	[ID_APPUNTAMENTO],
	[DATAACC],
	[ORAACC],
	[OPEACC],
	[DATADEL],
	[OPEDEL],
	[ID_REFERTO],
	[MODREF],
	[TIPOREF],
	[STATO],
	[ESPORTATO],
	[DATAESP],
	[SYS_DATAINS],
	[SYS_DATAMOD],
	[SYS_HOSTMOD],
	[ID_IMPEGNATIVA]
)
SELECT	[ID_ATTO],
	[ID_CONTATTO],
	[ID_PAZLOC],
	[ID_RICHIESTA],
	[CCEROGA],
	[CODPRE],
	[TIPOPRE],
	[CODGRU],
	[QUANTITA],
	[IMPORTO_E],
	[TARIFFA_E],
	[DATARICH],
	[ORARICH],
	[OPERICH],
	[DATAPRENO],
	[ORAPRENO],
	[OPEPRENO],
	[ID_APPUNTAMENTO],
	[DATAACC],
	[ORAACC],
	[OPEACC],
	[DATADEL],
	[OPEDEL],
	[ID_REFERTO],
	[MODREF],
	[TIPOREF],
	[STATO],
	[ESPORTATO],
	[DATAESP],
	[SYS_DATAINS],
	[SYS_DATAMOD],
	[SYS_HOSTMOD],
	[ID_IMPEGNATIVA]
FROM T_ATTI
WHERE ID_RICHIESTA = @ID_RICHIESTA

/*
	Gestione tabella RCHIESTE
*/
DECLARE @T_RICHIESTA TABLE (
	[ID_RICHIESTA] [int] NULL,
	[ID_CONTATTO] [int] NOT NULL,
	[ID_PAZLOC] [int] NOT NULL,
	[ACCESSO_REP_CODE] char(7) NULL,		--CCRICHIEDENTE
	[ORDINE_STATO] varchar(1) NULL,			--STATO
	[DATA_ACCETTAZIONE] varchar(8) NULL,	--DATAACC
	[DATA_RICHIESTA] char(8) NULL,			--DATARICH
	[QUESITO] varchar(256) NULL,			--QUESITO
	[NOTE] varchar(800) NULL,				--NOTE
	[PRIORITA] varchar(1) NULL				--CODURGENZA
	)
	IF(@TYPE = 'INT')
		BEGIN
			INSERT INTO @T_RICHIESTA(
				ID_RICHIESTA,
				ID_CONTATTO,
				ID_PAZLOC,
				ACCESSO_REP_CODE,
				ORDINE_STATO,
				DATA_ACCETTAZIONE,
				DATA_RICHIESTA,
				QUESITO,
				NOTE,
				PRIORITA
			)
			SELECT 	ID_RICHIESTA,
					ID_CONTATTO,
					ID_PAZLOC,
					CCRICHIEDENTE,
					STATO,
					DATAACC,
					DATARICH,
					QUESITO,
					NOTE,
					CODURGENZA
			FROM T_RICHIESTE_INT
			WHERE ID_RICHIESTA = @ID_RICHIESTA
		END
	ELSE IF(@TYPE = 'EST')
		BEGIN
			INSERT INTO @T_RICHIESTA(
				ID_RICHIESTA,
				ID_CONTATTO,
				ID_PAZLOC,
				ACCESSO_REP_CODE,
				ORDINE_STATO,
				DATA_ACCETTAZIONE,
				DATA_RICHIESTA,
				QUESITO,
				NOTE,
				PRIORITA
			)
			SELECT 	ID_RICHIESTA,
					ID_CONTATTO,
					ID_PAZLOC,
					CODRICHIEDENTE,
					STATO,
					DATAACC,
					DATARICH,
					QUESITO,
					NOTE,
					CODURGENZA
			FROM T_RICHIESTE_EST
			WHERE ID_RICHIESTA = @ID_RICHIESTA
		END

/*
	Gestione tabella per sezione COMMENTI/NTE
*/
DECLARE @T_COMMENTI TABLE (
	[PROGRESSIVO] [int] IDENTITY(1,1) NOT NULL,
	[ID_RICHIESTA] [int] NULL,
	[ID_CONTATTO] [int] NOT NULL,
	[ID_PAZLOC] [int] NOT NULL,
	[COLONNA] varchar(256) NULL,
	[VALORE] varchar(800) NULL
	)
INSERT INTO @T_COMMENTI (ID_RICHIESTA,ID_CONTATTO,ID_PAZLOC,COLONNA,VALORE)
SELECT ID_RICHIESTA,ID_CONTATTO,ID_PAZLOC,'QUESITO',QUESITO
FROM @T_RICHIESTA
WHERE ID_RICHIESTA = @ID_RICHIESTA
UNION
SELECT ID_RICHIESTA,ID_CONTATTO,ID_PAZLOC,'NOTE',NOTE
FROM @T_RICHIESTA
WHERE ID_RICHIESTA = @ID_RICHIESTA

select	
		------------------headerSIO
		(	SELECT
				coalesce(@guid,'') as 'guid'
				,coalesce(@sender,'') as 'sender'
				,coalesce(@receiver,'') as 'receiver'
				,coalesce(@requestDateTime,'') as 'requestDateTime'
				,coalesce(@version,'') as 'version'
			FOR XML PATH(''), type
		) as 'headerSIO',
		------------------bodySIO
		----------------------PID segment
		(	select DISTINCT
				'1' as 'PID/PID_CNT'	--Costante
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.ID_PAZLOC,''))) as 'PID/ID_AULA'
				,ltrim(rtrim(IsNull(L_DATI_ANAGRAFICI_AURA.ID_AURA,''))) AS 'PID/ID_AURA'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.CODFISCALE,''))) as 'PID/CODICE_FISCALE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.COGNOME,''))) as 'PID/COGNOME'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.NOME,''))) as 'PID/NOME'
				,	CASE ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.DATANASC,''))) 
						WHEN '' THEN NULL
						ELSE CAST(T_DATI_ANAGRAFICI.DATANASC AS DATETIME)
					END AS 'PID/DDN'
				,	CASE ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.SESSO,''))) 
						WHEN 'M' THEN 'M'
						WHEN 'I' THEN 'I'
						ELSE 'U'
					END AS 'PID/SESSO'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.CODICESTP,''))) as 'PID/STP_CODE'
				,ltrim(rtrim(IsNull('',''))) as 'PID/STP_DF'
				,	CASE ltrim(rtrim(IsNull(NULL,''))) 
						WHEN '' THEN NULL
						ELSE ''
					END AS 'PID/STP_DT'				
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.NUMLIBRETTO,''))) as 'PID/TESSERA_SANITARIA_CODE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI_TEAM.TEAM_ID_TESSERA,''))) as 'PID/TEAM_TESSERA_CODE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI_TEAM.TEAM_IST,''))) as 'PID/TEAM_ISTITUZIONE_CODE'
				,ltrim(rtrim(IsNull('',''))) as 'PID/TEAM_ISTITUZIONE_DESC'
				,	CASE ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI_TEAM.TEAM_DATASCAD,''))) 
						WHEN '' THEN NULL
						ELSE CAST(T_DATI_ANAGRAFICI_TEAM.TEAM_DATASCAD as datetime)
					END AS 'PID/TEAM_DATA_SCADENZA'				
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI_TEAM.TEAM_IDPAZ,''))) as 'PID/TEAM_CODICE_PAZIENTE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.INDIRIZZO,''))) as 'PID/RES_ADDR'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.COMRES,''))) as 'PID/RES_CODE'
				,(	SELECT ltrim(rtrim(IsNull(UTBG_COMUNI.DESCRIZ,''))) 
					FROM UTBG_COMUNI 
					WHERE UTBG_COMUNI.CODISTAT = T_DATI_ANAGRAFICI.COMRES AND DATAAL = '99999999') as 'PID/RES_DESC'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.CAP,''))) as 'PID/RES_CAP'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.ASL_RES,''))) as 'PID/RES_ASL_CODE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.REGRES,''))) as 'PID/RES_REG_CODE'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.DOM_IND,''))) as 'PID/DOM_ADDR'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.DOM_COM,''))) as 'PID/DOM_CODE'
				,(	SELECT ltrim(rtrim(IsNull(UTBG_COMUNI.DESCRIZ,''))) 
					FROM UTBG_COMUNI 
					WHERE UTBG_COMUNI.CODISTAT = T_DATI_ANAGRAFICI.DOM_COM AND DATAAL = '99999999') AS 'PID/DOM_DESC'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.DOM_CAP,''))) as 'PID/DOM_CAP'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.LUOGONASC,''))) as 'PID/LDN_CODE'
				,ltrim(rtrim(IsNull(dbo.f_desc_COMUNE_VALIDO_NASCITA(@ID_RICHIESTA),''))) AS 'PID/LDN_DESC'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.NUMTEL1,''))) as 'PID/TELEFONO_1'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.NUMTEL2,''))) as 'PID/TELEFONO_2'
				,	CASE ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.E_MAIL,'')))
						WHEN '' THEN NULL
						ELSE T_DATI_ANAGRAFICI.E_MAIL
					END AS 'PID/E_MAIL'
				,ltrim(rtrim(IsNull(T_DATI_ANAGRAFICI.CITTADINANZA,''))) as 'PID/CITTADINANZA_CODE'
				,ltrim(rtrim(IsNull('',''))) as 'PID/FLAG_CERTIFICATO'
				,ltrim(rtrim(IsNull('',''))) as 'PID/STATO_CIVILE'
				,	CASE ltrim(rtrim(IsNull(null,''))) 
						WHEN '' THEN NULL
						ELSE ''
					END AS 'PID/DATA_DECESSO'				
			from @T_RICHIESTA T_RICHIESTA
			WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
			FOR XML PATH(''), type
		) as 'bodySIO'
		----------------COMMENTI/NTE segment:
		,(
			SELECT DISTINCT
				ltrim(rtrim(IsNull(TEMP_COMMENTI.PROGRESSIVO,''))) as 'NTE_CNT'
				,ltrim(rtrim(IsNull(TEMP_COMMENTI.VALORE,''))) as 'COMMENTO'
				,ltrim(rtrim(IsNull(TEMP_COMMENTI.COLONNA,''))) as 'TIPO_COMMENTO'
			from @T_COMMENTI TEMP_COMMENTI
				inner join @T_RICHIESTA T_RICHIESTA ON T_RICHIESTA.ID_RICHIESTA = TEMP_COMMENTI.ID_RICHIESTA
			WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
			FOR XML PATH('NTE'), type
				) AS 'bodySIO/COMMENTI'		
		------------------PV1 segment
		,(	SELECT DISTINCT
				1 as 'PV1_CNT'	--Costante
				,ltrim(rtrim(IsNull(T_CONTATTI.TIPO,''))) as 'ACCESSO_TIPO'						--Da tipizzare per TIPOLOGIA: Ordinario, DayH, ...
				,ltrim(rtrim(IsNull(T_CONTATTI.NUMCARTELLA,''))) as 'ACCESSO_NUMERO'
				--,ltrim(rtrim(IsNull(T_RICHIESTA.CCRICHIEDENTE,''))) as 'ACCESSO_REP_CODE'
				,ltrim(rtrim(IsNull(T_RICHIESTA.ACCESSO_REP_CODE,''))) as 'ACCESSO_REP_CODE'
				,ltrim(rtrim(IsNull(UTBG_CCOSTO_PARAM.DESCRIZ,''))) as 'ACCESSO_REP_DESC'
				,	CASE ltrim(rtrim(IsNull(T_SDO1.DATARICOVERO,''))) 					
						WHEN '' THEN NULL
						ELSE CAST(T_SDO1.DATARICOVERO AS DATETIME)
					END  as 'ACCESSO_DATA'
				,ltrim(rtrim(IsNull('',''))) as 'COSTO_TOTALE'
				,ltrim(rtrim(IsNull('',''))) as 'COSTO_DA_PAGARE'
				,ltrim(rtrim(IsNull('',''))) as 'COSTO_PAGATO'
				,ltrim(rtrim(IsNull('',''))) as 'ACCESSO_ORA'
				,ltrim(rtrim(IsNull('',''))) as 'ALTEZZA'
				,ltrim(rtrim(IsNull('',''))) as 'PESO'
				,ltrim(rtrim(IsNull('',''))) as 'DIURESI_ORE'
				,ltrim(rtrim(IsNull('',''))) as 'DIURESI_QTY'
				,ltrim(rtrim(IsNull('',''))) as 'SETTIMANE_GRAVIDANZA'
				,ltrim(rtrim(IsNull('',''))) as 'CODICE_PRESIDIO'
			from @T_RICHIESTA T_RICHIESTA
			WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
			FOR XML PATH(''), type		
		) as 'bodySIO/PV1'
		------------------PV2 segment
		,(	SELECT DISTINCT
				ltrim(rtrim(IsNull('',''))) as 'OSCURAMENTO'
				,ltrim(rtrim(IsNull('',''))) as 'NO_STAMPA'
			from @T_RICHIESTA T_RICHIESTA
			WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
			FOR XML PATH(''), type		
		) as 'bodySIO/PV2'		
		-------------------CAMPIONI SEGMENT
		--Da definire...
		----------------ORDERS/ORDER segment:
		,(
			SELECT
				NULL as CampoFittizioPerEstrazione_ATTI
				--------------------ORC segment
				,(	SELECT DISTINCT
						'NW' as 'ORDERCONTROL'										--NW:Nuovo ordine / CA: Cancellazione
						,ltrim(rtrim(IsNull(T_RICHIESTA.ID_RICHIESTA,''))) as 'ID_RICHIESTA'	--ID_CONTTATO nel caso di ESTERNI
						,	CASE ltrim(rtrim(IsNull(TEMP_ATTI.ID_ATTO,''))) 
								WHEN '' THEN NULL
								ELSE TEMP_ATTI.ID_ATTO
							END AS 'ID_ORDINE'
						--,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.STATO,''))) 
						--		WHEN '' THEN NULL
						--		ELSE T_RICHIESTA.STATO
						--	END AS 'ORDINE_STATO'
						,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.ORDINE_STATO,''))) 
								WHEN '' THEN NULL
								ELSE T_RICHIESTA.ORDINE_STATO
							END AS 'ORDINE_STATO'						
						--,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.DATAACC,''))) 
						--		WHEN '' THEN NULL
						--		ELSE CAST(T_RICHIESTA.DATAACC AS DATETIME)
						--	END  as 'DATA_ACCETTAZIONE'						
						,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.DATA_ACCETTAZIONE,''))) 
								WHEN '' THEN NULL
								ELSE CAST(T_RICHIESTA.DATA_ACCETTAZIONE AS DATETIME)
							END  as 'DATA_ACCETTAZIONE'											
						--,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.DATARICH,''))) 
						--		WHEN '' THEN NULL
						--		ELSE CAST(T_RICHIESTA.DATARICH AS DATETIME)
						--	END  as 'DATA_RICHIESTA'													
						,	CASE ltrim(rtrim(IsNull(T_RICHIESTA.DATA_RICHIESTA,''))) 
								WHEN '' THEN NULL
								ELSE CAST(T_RICHIESTA.DATA_RICHIESTA AS DATETIME)
							END  as 'DATA_RICHIESTA'																			
						,ltrim(rtrim(IsNull('',''))) as 'RIC_MED_CODE'
						,ltrim(rtrim(IsNull('',''))) as 'RIC_MED_COGNOME'
						,ltrim(rtrim(IsNull('',''))) as 'RIC_MED_NOME'
						,	CASE ltrim(rtrim(IsNull(NULL,''))) 
								WHEN '' THEN NULL
								ELSE ''
							END AS 'RIC_MED_CF'
						,ltrim(rtrim(IsNull('',''))) as 'RIC_REP_DESC'
						--,ltrim(rtrim(IsNull(T_RICHIESTA.CCRICHIEDENTE,''))) as 'RIC_REP_CODE'
						,ltrim(rtrim(IsNull(T_RICHIESTA.ACCESSO_REP_CODE,''))) as 'RIC_REP_CODE'						
						,ltrim(rtrim(IsNull('',''))) as 'EROG_CODE'
						,ltrim(rtrim(IsNull('',''))) as 'EROG_DESC'
						,ltrim(rtrim(IsNull(T_RICHIESTA.QUESITO,''))) as 'QUESITO'
						,ltrim(rtrim(IsNull('',''))) as 'IMPEGNATIVA'
						,ltrim(rtrim(IsNull('',''))) as 'IMPEGNATIVA_DATA'
						,ltrim(rtrim(IsNull('',''))) as 'TIPO_RICETTA'
						,ltrim(rtrim(IsNull('',''))) as 'ANAMNESI'
						,ltrim(rtrim(IsNull('',''))) as 'DATA_SCHEDULAZIONE'
						,ltrim(rtrim(IsNull(T_RICHIESTA.NOTE,''))) as 'NOTE'
					from @T_RICHIESTA T_RICHIESTA
					WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
					FOR XML PATH('ORC'), type				
				)
				--------------------TQ1 segment		
				,ltrim(rtrim(IsNull(TEMP_ATTI.PROGRESSIVO,''))) as 'TQ1/TQ1_CNT'
				--,ltrim(rtrim(IsNull(T_RICHIESTA.CODURGENZA,''))) as 'TQ1/PRIORITA'
				,ltrim(rtrim(IsNull(T_RICHIESTA.PRIORITA,''))) as 'TQ1/PRIORITA'				
				--------------------OBR segment		
				,ltrim(rtrim(IsNull(TEMP_ATTI.PROGRESSIVO,''))) as 'OBR/OBR_CNT'
				,ltrim(rtrim(IsNull(TEMP_ATTI.CODPRE,''))) as 'OBR/PRESTAZIONE_CODE'
				,ltrim(rtrim(IsNull(IsNUll((SELECT top 1 DESCRIZ FROM TBL_PRESTAZIONI pre where pre.codpre = TEMP_ATTI.CODPRE),(SELECT top 1 DESCRIZ FROM TBL_PRESTAZIONI pre where pre.CODMAU = TEMP_ATTI.CODPRE)),''))) as 'OBR/PRESTAZIONE_DESC'
				--,ltrim(rtrim(IsNull('',''))) as 'OBR/RICETTA_CODE'
			from @T_ATTI TEMP_ATTI
				inner join @T_RICHIESTA T_RICHIESTA ON T_RICHIESTA.ID_RICHIESTA = TEMP_ATTI.ID_RICHIESTA
			WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
			FOR XML PATH('ORDER'), type
				) AS 'bodySIO/ORDERS'
from @T_RICHIESTA T_RICHIESTA
	LEFT join T_DATI_ANAGRAFICI ON T_RICHIESTA.ID_PAZLOC = T_DATI_ANAGRAFICI.ID_PAZLOC
	LEFT join T_CONTATTI on T_RICHIESTA.ID_CONTATTO = T_CONTATTI.ID_CONTATTO
	LEFT join L_DATI_ANAGRAFICI_AURA on L_DATI_ANAGRAFICI_AURA.ID_PAZLOC = T_DATI_ANAGRAFICI.ID_PAZLOC
	LEFT join T_DATI_ANAGRAFICI_TEAM on T_DATI_ANAGRAFICI_TEAM.ID_PAZLOC = T_DATI_ANAGRAFICI.ID_PAZLOC
	--inner join UTBG_CCOSTO_PARAM ON T_RICHIESTA.CCRICHIEDENTE = UTBG_CCOSTO_PARAM.CCOSTO
	LEFT join UTBG_CCOSTO_PARAM ON T_RICHIESTA.ACCESSO_REP_CODE = UTBG_CCOSTO_PARAM.CCOSTO
	LEFT join T_sdo1 ON T_sdo1.ID_CONTATTO = T_RICHIESTA.ID_CONTATTO
WHERE T_RICHIESTA.ID_RICHIESTA = @ID_RICHIESTA
FOR XML PATH('messaggioSIO')

END

GO


